package org.joot.jmir2.display;

/**
 * 游戏入口
 * <br>
 * 对于游戏界面而言，左上角为(0,0)
 * <br>
 * 纹理绘制起点为左下
 * 
 * @author ShawRyan
 *
 */
public interface ApplicationListener {
	/** 游戏创建，资源初始化 */
	public void create ();
	/** 用户缩放窗体结束后 */
	public void resize (int width, int height);
	/** 
	 * 游戏绘制
	 * <br>
	 * 每一帧画面都会调用
	 * <br>
	 * 在此方法之前程序会自行清理屏幕像素
	 * <br>
	 * 即每一帧画面都需要被绘制，不存在连续几帧画面相同即不绘制的情况
	 * 
	 * 使用{@link org.joot.jmir2.display.Graphics#getCurrentFrame() Graphics}获取当前帧数进行纹理更新
	 * <br>
	 * 可以辅助参考{@link org.joot.jmir2.display.Graphics#getDeltaTime() Graphics}帧间隔时间
	 */
	public void render ();
	/** 游戏结束，释放资源 */
	public void dispose ();
	/** 发起退出请求 */
	public boolean isRequestExit ();
}